import axios from 'axios'


/**
 * 用户信息查询
 */

export const userInfo = (params) => (axios.get('/crmapi/user/user-info', params));

/**
 * 用户修改密码
 * @param {String} oldPwd    老密码
 * @param {String} newPwd    新密码
 *
 */
export const userMdfPwd = (params) => (axios.post('/crmapi/user/user-mdf_pwd', params));


/**
 *
 * 用户管理 - 用户重置密码
 *
 */
export const userResetPwd = (params) => (axios.post('/crmapi/user/user-reset_pwd', params));

/**
 * 用户创建
 * @param {String} nickname    用户((字母、数字、下划线或小数点组成)
 * @param {String} realName    姓名
 * @param {String} email    电邮
 * @param {String} roles    角色（多个角色用竖线隔开，例如：角色1|角色2|角色3）
 * @param {Integer} accountStatus    状态（1:启用 2: 禁用）Allowed values: 1, 2
 *
 */
export const userCreate = (params) => (axios.post('/crmapi/user/user-create', params));

/**
 * 用户删除
 * @param {Integer} accountNo    用户统一帐号
 * @param {String} nickname    用户
 *
 */
export const userDelete = (params) => (axios.post('/crmapi/user/user-delete', params));

/**
 * 用户查询
 * @param {Integer} accountStatus    状态（1:启用 2: 禁用）Allowed values: 1, 2
 *
 */
export const userQuery = (params) => (axios.post('/crmapi/user/user-query', params));

/**
 * 用户模糊查询（前台控制禁止输入特殊字符）
 * @param {Integer} input    输入信息
 *
 */
export const userNickname = (params) => (axios.post('/crmapi/user/user-nickname', params));

/**
 * 用户登出
 *参数详情见接口文档
 */

export const signOut = (params) => (axios.get('/crmapi/user/user-sign_out', params));

/**
 * 用户登录
 * @param {String} loginName    用户电子邮件
 * @param {String} pwd    登录密码
 */

export const login = (params) => (axios.post('/crmapi/user/user-sign_in', params));

/**
 * 用户编辑
 * @param [String] realName    姓名
 * @param [String] srcRealName    原姓名
 * @param [String] email    电邮
 * @param [String] srcEmail    原电邮
 * @param [String] roles    角色（多个角色用竖线隔开，例如 角色1|角色2|角色3）
 * @param [String] srcRoles    原角色（多个角色用竖线隔开，例如 角色1|角色2|角色3）
 * @param [Integer] accountStatus    状态（1:启用，2: 禁用）Allowed values: 1, 2
 * @param [Integer] srcAccountStatus    原状态（1:启用，2: 禁用）Allowed values: 1, 2
 */

export const userEdit = (params) => (axios.post('/crmapi/user/user-edit', params));
